#pragma once
#include "Headers.h"
#include "ConsoleForm.h"

namespace OgreUnified{

	class LogManagerInterface: public Ogre::LogListener
	{
	private:
	public:
		LogManagerInterface()
		{

		}
		~LogManagerInterface()
		{

		}
		
		void messageLogged( const Ogre::String& message, LogMessageLevel lml, bool maskDebug, const Ogre::String &logName )
		{
			switch(lml)
			{
			case LML_CRITICAL:
				ConsoleForm::Instance->logMessage(gcnew System::String(message.c_str()),LOG_ERROR);
				break;
			case LML_NORMAL:
				ConsoleForm::Instance->logMessage(gcnew System::String(message.c_str()),LOG_INFO);
				break;
			case LML_TRIVIAL:
				ConsoleForm::Instance->logMessage(gcnew System::String(message.c_str()),LOG_WARNING);
				break;
			}	
		}
	};

}